﻿using SqlSugar;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace BW.MesProject.WareHouse.Domain
{
    /// <summary>
    /// 审批流程实例表
    /// </summary>
    public class ApprovalProcess
    {
        /// <summary>
        /// 流程实例Id
        /// </summary>
        [SugarColumn( IsPrimaryKey = true, ColumnDescription = "流程实例Id")]
        public string ApprovalProcessId { get; set; }
        /// <summary>
        /// 申请单Id 
        /// </summary>
        [SugarColumn(ColumnDescription = "申请单Id")]
        public string RequisitionId { get; set; }

        /// <summary>
        /// 审批流程编码 
        /// </summary>
        [SugarColumn(ColumnDescription = "审批流程编码")]
        public string ProcessNodesId { get; set; }
        /// <summary>
        /// 当前节点
        /// </summary>
        [SugarColumn(ColumnDescription = "当前节点")]
        public string NodeSN { get; set; }

        /// <summary>
        /// 节点名称
        /// </summary>
        [SugarColumn(ColumnDescription = "节点名称")]
        public string NodeName { get; set; }

        /// <summary>
        /// 流状态(0:已申请 1:未审批 2：已审批  3：驳回  4：完成 5：取消申请)
        /// </summary>
        [SugarColumn(ColumnDescription = "流状态")]
        public int WFStatus { get; set; }

        /// <summary>
        /// 流程发起人
        /// </summary>
        [SugarColumn(ColumnDescription = "流程发起人")]
        public string StarterId { get; set; }

        /// <summary>
        /// 流程发起人姓名
        /// </summary>
        [SugarColumn(ColumnDescription = "流程发起人姓名")]
        public string Starter { get; set; }

        /// <summary>
        /// 当前操作人
        /// </summary>
        [SugarColumn(ColumnDescription = "当前操作人")]
        public string OperatorId { get; set; }

        /// <summary>
        /// 当前操作人姓名
        /// </summary>
        [SugarColumn(ColumnDescription = "当前操作人姓名")]
        public string Operator { get; set; }

        /// <summary>
        /// 待办人Id
        /// </summary>
        [SugarColumn(ColumnDescription = "待办人Id")]
        public string ToDoerId { get; set; }

        /// <summary>
        /// 待办人名称
        /// </summary>
        [SugarColumn(ColumnDescription = "待办人名称")]
        public string ToDoer { get; set; }

        /// <summary>
        /// 已操作人
        /// </summary>
        [SugarColumn(ColumnDescription = "已操作人")]
        public string Operated { get; set; }

        /// <summary>
        /// 流程创建时间
        /// </summary>
        [SugarColumn(ColumnDescription = "流程创建时间")]
        public DateTime CreateTime { get; set; }

        /// <summary>
        /// 流程更新时间
        /// </summary>
        [SugarColumn(ColumnDescription = "流程更新时间")]
        public DateTime UpdateTime { get; set; }

        /// <summary>
        /// 备注
        /// </summary>
        [SugarColumn(ColumnDescription = "备注",IsNullable =true)]
        public string? Memo { get; set; }
    }
}
